﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using br.com.SistemaChamados.Model.Common;
using br.com.SistemaChamados.Controller.Common;
using br.com.SistemaChamados.Util;

namespace SysCall_FINAL.Pages.Login
{
    public partial class ForgotPassword : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSend_Click(object sender, EventArgs e)
        {
            User changeUser = null;
            UserController userController = new UserController();
            changeUser = userController.getUserByEmail(txbEMail.Text);
            if (changeUser != null)
            {
                String newPassword = SecurityUtils.createRandomicPassword();
                changeUser.Password = newPassword;
                if(userController.UpdateUser(changeUser) == br.com.SistemaChamados.Enum.EnumGenericState.GENERIC_STATE_SUCCESS)
                {
                    string mailMessage = "Sua senha foi resetada com sucesso. Agora, sua senha é "+newPassword+". Solicitação realizada em "+DateTime.Now.ToString();
                    string mailTo = txbEMail.Text;
                    string subject = "SysCall - Solicitação para resetar senha de usuário";
                    EmailUtils.SendMail(mailTo, subject, mailMessage);
                    Response.Write(@"<script language='javascript'>alert('A nova senha foi enviada ao email do usuário.');</script>");
                    Response.Redirect("~/Pages/Login/Login.aspx");
                }
                else
                {
                    Response.Write(@"<script language='javascript'>alert('Houve um erro ao processar o reset da senha do usuário.');</script>");
                }
            }
            else
            {
                Response.Write(@"<script language='javascript'>alert('Não existe usuário com ese email cadastrado.');</script>");
            }
        }
    }
}